The average utilization of Internet bandwidth by content-delivering servers is usually high during peak-demand periods and low during other periods. Therefore, operating a local system, such as an edge caching storage system, may result in unsatisfactory content delivery efficiency. In addition, commonly used techniques of distributed streaming require all or most of the streaming content to be stored in multiple locations. These techniques require large amounts of storage. Moreover, commonly used Content Delivery Networks (CDN) either cache content at the edges of the Internet, or use dedicated communication lines to transport content from aggregation centers to locations near end users. These CDNs require large amounts of storage to cache content, or expensive dedicated communication lines to connect content aggregation centers to locations near end users.